GNUSH v0901
February 4th, 2009
KPIT Cummins
Infosystems Limited is releasing GNUSH v0901, a cross compiler toolchain for Renesas (formerly
Hitachi and
Mitsubishi) SH series of microcontrollers.
SALIENT
FEATURES:
1.
|
The
GNUSH v0901 is based on gcc-4.3.2 [released], binutils-2.19 [released],
newlib-1.16.0 [released], gdb-6.8.50 [dated 11th August 2008].
|
2.
|
The
latest patches are applied to gcc, binutils and newlib sources. Please
refer to the following link for the patches applied to the GNUSH toolchain,
http://www.kpitgnutools.com/phpmyfaq/index.php?aktion=artikel&rubrik=002004&id=78&lang=en
|
3.
|
A
new utility, "unifile", is provided
along with GNUSH v0901 toolchain. This utility
combines two or more Motorola format files (S-Record / Mot file) or Intel
format files (Hex file) to generate a single Motorola format file or Intel
format file.
|
4.
|
The KPIT GNUSH toolchain can now be integrated with HEW4.05 on Windows
Vista.
|
5. |
GNUSH is now
multicore ready. The GNUSH tools now support
multi-core SuperH architectures including the newly released SH7205. For
more information on the SH7205 please visit:
http://eu.renesas.com/gnumulticore
|
ABOUT
GNUSH v0901:
Release
version:
|
GNUSH v0901
|
Release Date:
|
February 4th,
2009
|
Platforms
Supported:
|
Red Hat
GNU/Linux v8.0 or later (or compatible distribution)
Windows NT/2000/XP/Vista
|
Language:
|
C, C++
|
Targets:
|
SH-1
|
|
SH-2
|
|
SH-2A
|
|
SH-2E
|
|
SH2-DSP
|
|
SH-3
|
|
SH-3E
|
|
SH3-DSP
|
|
SH-4
|
|
SH-4A
|
|
SH-4AL-DSP
|
Object File
Format:
|
ELF
|
For free technical
support register at http://www.kpitgnutools.com
For your feedback and suggestions visit http://www.kpitgnutools.com/feedback.php
CHANGES
IN THIS RELEASE:
This section describes
the enhancements and the problems fixed in this release.
GCC:
1.
|
The following test case containing a loop did not
generate DT (Decrement and Test) instruction for 'O1', 'O2', 'O3' and 'Os'
optimisation options.
int i;
void main(void)
{
volatile int j = 0;
for (i=0;i<256;i++)
{
j++;
}
}
This bug
has now been fixed. The DT instruction is now generated
by all targets that
support this instruction. |
HEW
(For Windows OS only):
1.
|
All the object
files are linked using an external linker script. Previously if a file was
added as an input under the 'Build'->'Linker'->'Input' tab settings, it
would not get linked with the application.
This bug has now been fixed.
|
2. |
In the HEW ED2
Reader after downloading the segments at their LMAs, the variables could not
be watched. This bug is now fixed. |
3.
|
If the '-mrenesas'
option is passed to the compiler phase in HEW, the '-renesas' option was not
being passed to the linker phase.
This bug is now fixed.
|
4.
|
The two Sh-2A targets i.e. 7206 and 7211, which do not support FPU
are
now added under a separate CPU series 'SH2A-NOFPU' in the project
generator.
|
5.
|
The KPIT GNUSH toolchain
can now be integrated with HEW4.05 on Windows Vista.
Please refer to the following link
for the un-installation procedure,
http://www.kpitgnutools.com/phpmyfaq/index.php?aktion=artikel&rubrik=003001&id=313&lang=en
|
6.
|
Use of the FDT
plugins under HEW on Windows Vista is deprecated. Hence, users are advised
to download the latest version of the FDT application and use this
application independently for Flash downloads. |
INSTALLER:
1. |
A shortcut
is now available in the 'Start Menu' folder for v0901 toolchain
samples. |
OTHERS:
1.
|
The "unifile"
utility facilitates the merging of two or more Motorola format files
(commonly known as Mot file or S-Record file) or Intel format files
(commonly known as Hex file) to generate a single Motorola format file
(S-Record / Mot file) or Intel format file (Hex file).
This tool can be used as a command line utility
or it can be interfaced in HEW by adding a custom build phase.
Refer to the following link for the user manual for the "unifile" tool,
http://kpitgnutools.com/Unifile_Utility_UserManual.pdf
|
KNOWN PROBLEMS IN SH-ELF:
This
section describes the known problems in this release. We intend to fix the
known problems in our future releases.
We also release maintenance packs for critical bugs fixed in between
releases.
Windows
and GNU/Linux:
1.
|
In newlib, 'fmod' function fails
with and without "-mrenesas" option for
the following single precision targets,
|
a.
|
SH2E
|
b.
|
SH2A-Single-Only
|
c.
|
SH3E
|
d.
|
SH4-Single-Only
(Little endian and big endian)
|
e.
|
SH4A-Single-Only
(Little endian and big endian)
|
2.
|
The
'log10', 'ldexp' and 'frexp'
functions of optimised libraries fail for
SH4-Single-Only (Little endian) and
SH4A-Single-Only (Little endian) targets.
|
3.
|
Library
Generator: Refer to the following link for the known issues and limitations
of this utility,
http://www.kpitgnutools.com/phpmyfaq/index.php?aktion=artikel&rubrik=002003&id=415&lang=en
|
4. |
The SH peripheral
registers have strict access size requirements with some registers requiring
a byte level access. The GNUSH compiler generates a word level instruction "mov.w"
to access these peripheral registers. This type of access currently fails on the
hardware.
|
HEW
(For Windows OS only):
1.
|
Library
Generator: Currently, after changing the "Library Generator"
settings, the user is prompted to open the Complier/ Linker option dialogs
and click on "OK". We are aware of the inconvenience to the users
and will provide a fix in future releases.
|
NOTE:
Windows
and GNU/Linux:
1.
|
The
optimised libraries are provided along with the newlib libraries in the toolchain
and do not require separate download.
|
2.
|
The
optimised libraries ('liboptm.a'
and 'liboptc.a') are not provided under GNU GPL.
The source code of these optimised libraries is
neither released nor available on request.
|
3.
|
The
"libgen" utility is not provided under
GNU GPL. The source code of the "libgen"
utility is neither released nor available on request.
|
|